<html>
<head><meta charset="utf-8"><title>issue-52713-escaping-into-static · t-compiler/wg-nll · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/index.html">t-compiler/wg-nll</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html">issue-52713-escaping-into-static</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="130344971"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130344971" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130344971">(Jul 26 2018 at 13:51)</a>:</h4>
<p>hello <span class="user-mention" data-user-id="116009">@nikomatsakis</span> sorry to bother you, I was looking at this and wanted to check: to check which variables refer to which, I should do a mir walk, looking for statements / assign ?</p>



<a name="130348232"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348232" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348232">(Jul 26 2018 at 14:44)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> yes, I think you could use a MIR visitor</p>



<a name="130348445"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348445" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348445">(Jul 26 2018 at 14:47)</a>:</h4>
<p>do you by any chance remember an area of the compiler where we look for similar kinds of information, so that I don't bother you for trivial questions ?</p>



<a name="130348585"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348585" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348585">(Jul 26 2018 at 14:48)</a>:</h4>
<p>(mostly to see the kinds of visit callbacks I'd need to look for, but I guess, assignments, statements, maybe locals and places, etc)</p>



<a name="130348762"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348762" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348762">(Jul 26 2018 at 14:50)</a>:</h4>
<p>hmm, I can't think of anything quite comparable -- but I imagined that you would probably visit assignments</p>



<a name="130348764"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348764" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348764">(Jul 26 2018 at 14:50)</a>:</h4>
<p>and then match on the rvalue</p>



<a name="130348829"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130348829" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130348829">(Jul 26 2018 at 14:51)</a>:</h4>
<p>alright thank you, it'll be a good start already</p>



<a name="130425204"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130425204" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130425204">(Jul 27 2018 at 17:41)</a>:</h4>
<p>alrighty, here's a <a href="https://github.com/lqd/rust/commit/144aba25597ad02417a467e90bd25211b80933e4" target="_blank" title="https://github.com/lqd/rust/commit/144aba25597ad02417a467e90bd25211b80933e4">quick WIP try/hack?</a> at finding which locals flow into statics . Is this direction how you envisioned it or am I off base ?</p>



<a name="130425408"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130425408" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130425408">(Jul 27 2018 at 17:44)</a>:</h4>
<p>and if that's approximately ok, how would I then go about forcing the escaping locals' regions to outlive <code>'static</code> ?</p>



<a name="130425750"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130425750" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130425750">(Jul 27 2018 at 17:51)</a>:</h4>
<p>(as another data point, <em>completely disabling liveness</em> in our <code>html5ever</code> big static benchmark case ended up improving around 25% so it's likely the upper bound of this future fix, and it's also likely that time would now go into dataflow/moveck like we recently talked about wrt to <code>tuple-stress</code>)</p>



<a name="130454383"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130454383" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130454383">(Jul 28 2018 at 07:00)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> I am off to the beach just now ;) but from a 22-second glance looks right</p>



<a name="130454384"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130454384" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130454384">(Jul 28 2018 at 07:00)</a>:</h4>
<p>will try to look more closely later</p>



<a name="130454448"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130454448" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130454448">(Jul 28 2018 at 07:02)</a>:</h4>
<p>thanks :) enjoy the beach <span class="emoji emoji-1f3d6" title="beach with umbrella">:beach_with_umbrella:</span></p>



<a name="130466918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130466918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130466918">(Jul 28 2018 at 13:11)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> left a few comments now</p>



<a name="130473445"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130473445" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130473445">(Jul 28 2018 at 15:52)</a>:</h4>
<p>thanks for the comments, I'll try to do as much as I can before leaving :)</p>



<a name="130473681"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130473681" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130473681">(Jul 28 2018 at 15:59)</a>:</h4>
<p>I had started previously in the way the comments say, and testing on the "mini html5ever" version it seemed like it would stop a bit before getting to the big inner arrays. The MIR was indeed very similar to the <code>const X: u32 = add(&amp;22, &amp;44);</code> case except the references were to these big arrays instead, and my thoughts were that most of the liveness time was spent computing it for the array's elements, which I assumed I wouldn't prevent with this initial way. I'll expand checking to projections as well, and check the rvalues conservatively :)</p>



<a name="130473835"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130473835" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130473835">(Jul 28 2018 at 16:03)</a>:</h4>
<p>(maybe the bigger wins / biggest time spent may be coming from the behaviour that is shared with <code>tuple-stress</code> in this benchmark <span class="emoji emoji-1f914" title="thinking face">:thinking_face:</span> )</p>



<a name="130506402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506402">(Jul 29 2018 at 03:42)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> when do you leave btw?</p>



<a name="130506406"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506406" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506406">(Jul 29 2018 at 03:43)</a>:</h4>
<p>are you saying there were fn calls in the MIR?</p>



<a name="130506458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506458">(Jul 29 2018 at 03:44)</a>:</h4>
<p>that said, I agree this will not be enough to "solve" html5ever...</p>



<a name="130506464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506464">(Jul 29 2018 at 03:44)</a>:</h4>
<p>I'm looking at the MIR for the smaller variant now (<a href="https://play.rust-lang.org/?gist=ae6c98f2c7fc1bd0c51293b4166df870&amp;version=nightly&amp;mode=debug&amp;edition=2015" target="_blank" title="https://play.rust-lang.org/?gist=ae6c98f2c7fc1bd0c51293b4166df870&amp;version=nightly&amp;mode=debug&amp;edition=2015">playground</a>)</p>



<a name="130506524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506524">(Jul 29 2018 at 03:46)</a>:</h4>
<p>it seems like we need aggregates, ref expressions (<code>&amp;foo</code>), unsizing casts, moves...</p>



<a name="130506526"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130506526" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130506526">(Jul 29 2018 at 03:46)</a>:</h4>
<p>and that's it?</p>



<a name="130515355"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130515355" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130515355">(Jul 29 2018 at 08:10)</a>:</h4>
<p>leaving tomorrow so timing is tight :)</p>



<a name="130515789"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130515789" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130515789">(Jul 29 2018 at 08:24)</a>:</h4>
<p>oh no it wasn’t the function calls, just refs to inputs and I likely misunderstood these shouldn’t escape — but It seems the eg “_1 = const 22u32” shouldn’t escape but “_2 = &amp;1” should, and how I did it absolutely accepts the inputs when it shouldn’t</p>



<a name="130516382"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130516382" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130516382">(Jul 29 2018 at 08:41)</a>:</h4>
<p>specifically it wasn't immediately clear to me in the comment's example <a href="https://play.rust-lang.org/?gist=73e7f8b9c4fa6975f1b794e4b909d4cd&amp;version=nightly&amp;mode=debug&amp;edition=2015" target="_blank" title="https://play.rust-lang.org/?gist=73e7f8b9c4fa6975f1b794e4b909d4cd&amp;version=nightly&amp;mode=debug&amp;edition=2015">playground</a> how the MIR for the static X was to be handled differently from the static NAMED_ENTITIES</p>



<a name="130517591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130517591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130517591">(Jul 29 2018 at 09:13)</a>:</h4>
<p>ok now I think I understand the comment sorry :/ by looking at the rvalue directly I wouldn't mark locals which are visited as byproducts of eg the const fn call, which I surely get rn. I was looking at the MIR for the inputs while the problem would appear in the output...</p>



<a name="130524114"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130524114" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130524114">(Jul 29 2018 at 13:18)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> if you wind up leaving we can always "hand off" the branch</p>



<a name="130528407"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130528407" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130528407">(Jul 29 2018 at 15:30)</a>:</h4>
<p>yeah I hope I can finish this first step of computing the escaping locals during the night, so it’s at least done before handing it off to incorporate into liveness</p>



<a name="130543586"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130543586" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130543586">(Jul 29 2018 at 22:43)</a>:</h4>
<p>pushed <a href="https://github.com/rust-lang/rust/commit/fe58fba3a1207bda79a61c8e372d22d1271dc8dc" target="_blank" title="https://github.com/rust-lang/rust/commit/fe58fba3a1207bda79a61c8e372d22d1271dc8dc">this commit</a> which should be more in-line with how we wanted to do the analysis; in my tests it seemed to correctly analyze the <code>html5ever</code> static, and detect all but the const fn call in our counter-example. There are things I lacked time to do/wasn't sure exactly under which form we wanted them:<br>
- this needs tests<br>
- maybe debug logs of the escaping locals gathering<br>
- the big one I expected would not have enough time to finish: it still doesn't do anything with the escaping locals to filter them from liveness.<br>
I can still do some fixups in the morning btw. Still, sorry I couldn't push this over the finish line :/</p>



<a name="130563766"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130563766" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130563766">(Jul 30 2018 at 08:05)</a>:</h4>
<p>but otherwise, I think it should be in good enough shape to hand off</p>



<a name="130572121"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130572121" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130572121">(Jul 30 2018 at 11:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> awesome, I have some plane rides coming up, maybe I'll pick it up</p>



<a name="130581418"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130581418" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130581418">(Jul 30 2018 at 14:10)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> safe travels niko :)</p>



<a name="130583274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583274">(Jul 30 2018 at 14:39)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> what branch? (I was going to pull it locally and get the build process started)</p>



<a name="130583338"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583338" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583338">(Jul 30 2018 at 14:40)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> <a href="https://github.com/lqd/rust/tree/the-MIRnistry-of-silly-walks" target="_blank" title="https://github.com/lqd/rust/tree/the-MIRnistry-of-silly-walks">https://github.com/lqd/rust/tree/the-MIRnistry-of-silly-walks</a></p>



<a name="130583409"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583409" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583409">(Jul 30 2018 at 14:41)</a>:</h4>
<p>(the fork is a bit behind, like 6 days)</p>



<a name="130583490"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583490" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583490">(Jul 30 2018 at 14:42)</a>:</h4>
<p>(<span class="user-mention" data-user-id="116107">@David Wood</span> <em>whistling</em> + you're a brit right ? :D)</p>



<a name="130583601"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583601" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583601">(Jul 30 2018 at 14:44)</a>:</h4>
<p>building...</p>



<a name="130583629"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130583629" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130583629">(Jul 30 2018 at 14:44)</a>:</h4>
<p>(<span class="user-mention" data-user-id="116113">@lqd</span>  yeah, Scottish)</p>



<a name="130586520"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130586520" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130586520">(Jul 30 2018 at 15:29)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> this is not a unique cultural reference ;-) I'd say many (most?) nerds would get it.</p>



<a name="130586579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130586579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130586579">(Jul 30 2018 at 15:30)</a>:</h4>
<p>I love making fun branch names. They are usually non-obvious</p>



<a name="130586924"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130586924" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130586924">(Jul 30 2018 at 15:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116155">@Jake Goulding</span> :)</p>



<a name="130673361"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130673361" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> mikhail-m1 <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130673361">(Jul 31 2018 at 21:30)</a>:</h4>
<p>hi, I can continue work on this issue if nobody on it rightnow</p>



<a name="130771886"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130771886" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130771886">(Aug 02 2018 at 11:09)</a>:</h4>
<p>I'm still not able to really be online, but I did poke at this branch a bit actually <span class="user-mention" data-user-id="116925">@mikhail-m1</span> and I <em>think</em> I kind of got it working</p>



<a name="130969164"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130969164" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130969164">(Aug 06 2018 at 10:11)</a>:</h4>
<p>argh I just realized a huge bug in this implementation -- the idea is sound, but overly aggressive</p>



<a name="130974458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130974458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130974458">(Aug 06 2018 at 12:09)</a>:</h4>
<p>opened <a href="https://github.com/rust-lang/rust/pull/53109" target="_blank" title="https://github.com/rust-lang/rust/pull/53109">https://github.com/rust-lang/rust/pull/53109</a> but I'll post some notes for how to do this properly</p>



<a name="130976927"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130976927" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130976927">(Aug 06 2018 at 12:57)</a>:</h4>
<p><span class="user-mention" data-user-id="116113">@lqd</span> or <span class="user-mention" data-user-id="116925">@mikhail-m1</span> still interested?</p>



<a name="130977018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130977018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130977018">(Aug 06 2018 at 12:59)</a>:</h4>
<p>I left a comment here <a href="https://github.com/rust-lang/rust/issues/52713#issuecomment-410699523" target="_blank" title="https://github.com/rust-lang/rust/issues/52713#issuecomment-410699523">https://github.com/rust-lang/rust/issues/52713#issuecomment-410699523</a></p>



<a name="130977020"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130977020" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> mikhail-m1 <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130977020">(Aug 06 2018 at 12:59)</a>:</h4>
<p>Hi <span class="user-mention" data-user-id="116009">@nikomatsakis</span> , I don't mind to continue work on it, if <span class="user-mention" data-user-id="116113">@lqd</span>  don't have time...</p>



<a name="130977077"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130977077" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130977077">(Aug 06 2018 at 13:00)</a>:</h4>
<p>I predict I will be pretty caught up :)</p>



<a name="130977087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130977087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130977087">(Aug 06 2018 at 13:01)</a>:</h4>
<p>take a look at my comment — I think it's not a <em>major</em> change that is needed</p>



<a name="130982249"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130982249" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130982249">(Aug 06 2018 at 14:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116925">@mikhail-m1</span> shall I assign to you then?</p>



<a name="130982488"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130982488" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130982488">(Aug 06 2018 at 14:39)</a>:</h4>
<p>I'm leaning towards <a href="https://github.com/rust-lang/rust/issues/52713#issuecomment-410730818" target="_blank" title="https://github.com/rust-lang/rust/issues/52713#issuecomment-410730818">this alternative approach now</a></p>



<a name="130982498"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130982498" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130982498">(Aug 06 2018 at 14:39)</a>:</h4>
<p>I can also take a stab (as you prefer)</p>



<a name="130982505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130982505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130982505">(Aug 06 2018 at 14:39)</a>:</h4>
<p>I had some other ideas for perf improvements I need to try and write up</p>



<a name="130983640"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130983640" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> lqd <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130983640">(Aug 06 2018 at 14:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116925">@mikhail-m1</span> I'm still away until next week, feel free to take it :)</p>



<a name="130986776"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130986776" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> mikhail-m1 <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130986776">(Aug 06 2018 at 15:46)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span>  yes, you can assign it to me, but it  will take some time to understand how to implement the new approach</p>



<a name="130987924"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130987924" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130987924">(Aug 06 2018 at 16:06)</a>:</h4>
<p><span class="user-mention" data-user-id="116925">@mikhail-m1</span> if you can give me some high-level tips of what might need explanation, I can try to add more details</p>



<a name="130987949"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130987949" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> mikhail-m1 <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130987949">(Aug 06 2018 at 16:07)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span>  yes, it will be helpful</p>



<a name="130988027"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/130988027" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#130988027">(Aug 06 2018 at 16:08)</a>:</h4>
<p>ok let me try to leave comments that are a bit more in depth. As far as delays, seems ok, whenever possible I always prefer to mentor! =) Last week I just happened to be sort of unavailable ...</p>



<a name="131044775"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static/near/131044775" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/122657-t-compiler/wg-nll/topic/issue-52713-escaping-into-static.html#131044775">(Aug 07 2018 at 13:36)</a>:</h4>
<p><span class="user-mention" data-user-id="116925">@mikhail-m1</span> i'm going to leave a few notes now</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>